# -*- coding: utf-8 -*-
import time

# 每个sprot里面有个表，key代表是盘口消息，如 1-2（比分）|全场|主队-1.5 ，半场全队大 ，vlaue是一张table
#先爬虫，然后拿到数据，再创建一个sprot，创建多个table，然后按照盘口，把赔率依依插入进table。
class Sport:

    def __init__(self, home='', away='', league='' ):
        """
        初始化 Sport 对象，支持创建空对象。
        :param start_time: 比赛开始时间，时间戳，和time.time()长度一样。
        :param home: 主队名称，字符串类型。
        :param away: 客队名称，字符串类型。
        :param league: 联赛名称，字符串类型（如：英超联赛）。
        :param Handicap: 让球信息，默认为 None。
        :param team: 主队或客队名称，默认为 None。
        :param odd: 赔率，默认为 None。
        """
        self.start_time = None
        self.sport_id = 0
        self.home = home  # 主队名称 (string)
        self.away = away  # 客队名称 (string)
        self.league = league  # 联赛名称
        self.match = f"{home} - {away}"  # match 属性，格式为 "home vs away"
        self.full_ou_odd =  {} #全场大小 {2.75:[1.99,1.90]}
        self.full_hdp_odd =  {}  #  全场让球 , {-0.75 : [1.95,1.94]}
        self.return_rate = 0  #返还率 0-100，之后计算的时候 /100
        #不计算半场


    # Getter 和 Setter 方法
    def set_score(self, score: str):
        """设置比赛比分"""
        self.score = score


    def set_start_time(self,start_time ):
        self.start_time = start_time

    def set_jiaoqiu(self, jiaoqiu: str):
        self.jiaoqiu = jiaoqiu

    def set_redcard(self, redcard: str):
        self.redcard = redcard

    def set_home(self, home: str):
        """设置主队名称"""
        self.home = home
        self.match = f"{home}VS{self.away}"

    def set_away(self, away: str):
        """设置客队名称"""
        self.away = away
        self.match = f"{self.home}VS{away}"

    def set_league(self, league: str):
        """设置联赛名称"""
        self.league = league


    def __hash__(self):
        # 使用 name 和 age 的哈希值作为对象的哈希值
        return hash((self.home, self.away))

    def __eq__(self, other):
        # 比较两个对象是否相等
        return (self.home, self.away) == (other.home, other.away)




    def __str__(self):
        """
        自定义对象的字符串表示，用于打印和调试。
        """
        return f"Sport(home='{self.home}', away='{self.away}',match={self.match}, league='{self.league}', sport_id='{self.sport_id},start_time={self.start_time}')"
